package com.acdc.device.domain;

import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 用电点管理对象 power_point_info
 * 
 * @author acdc
 * @date 2025-05-19
 */
public class PowerPointInfo extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 主键ID */
    private Long id;

    /** 管理单位ID，关联组织机构树 */
    @Excel(name = "管理单位ID，关联组织机构树")
    private String orgId;

    /** 用电场景（代码），关联字典表 */
    @Excel(name = "用电场景", readConverterExp = "代=码")
    private String applyScene;

    /** 是否开箱门：1是，0否 */
    @Excel(name = "是否开箱门：1是，0否")
    private Integer isOpenDoor;

    /** 用电点编号 */
    @Excel(name = "用电点编号")
    private String powerNo;

    /** 用电点名称 */
    @Excel(name = "用电点名称")
    private String powerName;

    /** 设备类别（代码），关联字典表 */
    @Excel(name = "设备类别", readConverterExp = "代=码")
    private String powerCate;

    /** 设备类型（代码），关联字典表 */
    @Excel(name = "设备类型", readConverterExp = "代=码")
    private String powerType;

    /** 费控类型（代码），关联字典表 */
    @Excel(name = "费控类型", readConverterExp = "代=码")
    private String feesChargedType;

    /** 上行通信规约（代码），关联字典表 */
    @Excel(name = "上行通信规约", readConverterExp = "代=码")
    private String upProtocol;

    /** 上行通信方式（代码），关联字典表 */
    @Excel(name = "上行通信方式", readConverterExp = "代=码")
    private String upChannel;

    /** 下行通信方式（代码），关联字典表 */
    @Excel(name = "下行通信方式", readConverterExp = "代=码")
    private String downChannel;

    /** 区码（4位） */
    @Excel(name = "区码")
    private String areaCode;

    /** 地址码（5位） */
    @Excel(name = "地址码")
    private String addressCode;

    /** 最大通道数 */
    @Excel(name = "最大通道数")
    private Integer maxChannels;

    /** 安装地址 */
    @Excel(name = "安装地址")
    private String installAddress;

    /** 创建时间 */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @Excel(name = "创建时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
    private Date createdAt;

    /** 更新时间 */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @Excel(name = "更新时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
    private Date updatedAt;

    /** 管理单位名称 */
    @Excel(name = "管理单位名称")
    private String deptName;

    public void setId(Long id) 
    {
        this.id = id;
    }

    public Long getId() 
    {
        return id;
    }

    public void setOrgId(String orgId) 
    {
        this.orgId = orgId;
    }

    public String getOrgId() 
    {
        return orgId;
    }

    public void setApplyScene(String applyScene) 
    {
        this.applyScene = applyScene;
    }

    public String getApplyScene() 
    {
        return applyScene;
    }

    public void setIsOpenDoor(Integer isOpenDoor) 
    {
        this.isOpenDoor = isOpenDoor;
    }

    public Integer getIsOpenDoor() 
    {
        return isOpenDoor;
    }

    public void setPowerNo(String powerNo) 
    {
        this.powerNo = powerNo;
    }

    public String getPowerNo() 
    {
        return powerNo;
    }

    public void setPowerName(String powerName) 
    {
        this.powerName = powerName;
    }

    public String getPowerName() 
    {
        return powerName;
    }

    public void setPowerCate(String powerCate) 
    {
        this.powerCate = powerCate;
    }

    public String getPowerCate() 
    {
        return powerCate;
    }

    public void setPowerType(String powerType) 
    {
        this.powerType = powerType;
    }

    public String getPowerType() 
    {
        return powerType;
    }

    public void setFeesChargedType(String feesChargedType) 
    {
        this.feesChargedType = feesChargedType;
    }

    public String getFeesChargedType() 
    {
        return feesChargedType;
    }

    public void setUpProtocol(String upProtocol) 
    {
        this.upProtocol = upProtocol;
    }

    public String getUpProtocol() 
    {
        return upProtocol;
    }

    public void setUpChannel(String upChannel) 
    {
        this.upChannel = upChannel;
    }

    public String getUpChannel() 
    {
        return upChannel;
    }

    public void setDownChannel(String downChannel) 
    {
        this.downChannel = downChannel;
    }

    public String getDownChannel() 
    {
        return downChannel;
    }

    public void setAreaCode(String areaCode) 
    {
        this.areaCode = areaCode;
    }

    public String getAreaCode() 
    {
        return areaCode;
    }

    public void setAddressCode(String addressCode) 
    {
        this.addressCode = addressCode;
    }

    public String getAddressCode() 
    {
        return addressCode;
    }

    public void setMaxChannels(Integer maxChannels) 
    {
        this.maxChannels = maxChannels;
    }

    public Integer getMaxChannels() 
    {
        return maxChannels;
    }

    public void setInstallAddress(String installAddress) 
    {
        this.installAddress = installAddress;
    }

    public String getInstallAddress() 
    {
        return installAddress;
    }

    public void setCreatedAt(Date createdAt) 
    {
        this.createdAt = createdAt;
    }

    public Date getCreatedAt() 
    {
        return createdAt;
    }

    public void setUpdatedAt(Date updatedAt) 
    {
        this.updatedAt = updatedAt;
    }

    public Date getUpdatedAt() 
    {
        return updatedAt;
    }

    public void setDeptName(String deptName) {
        this.deptName = deptName;
    }

    public String getDeptName() {
        return deptName;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("orgId", getOrgId())
            .append("applyScene", getApplyScene())
            .append("isOpenDoor", getIsOpenDoor())
            .append("powerNo", getPowerNo())
            .append("powerName", getPowerName())
            .append("powerCate", getPowerCate())
            .append("powerType", getPowerType())
            .append("feesChargedType", getFeesChargedType())
            .append("upProtocol", getUpProtocol())
            .append("upChannel", getUpChannel())
            .append("downChannel", getDownChannel())
            .append("areaCode", getAreaCode())
            .append("addressCode", getAddressCode())
            .append("maxChannels", getMaxChannels())
            .append("installAddress", getInstallAddress())
            .append("createdAt", getCreatedAt())
            .append("updatedAt", getUpdatedAt())
            .toString();
    }
}
